package cn.didi.feidi.javabackend.mysql.jpa.hibernate;

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

/**
 * Created by asus on 2017-07-19.
 */
public class ConditionWrapper {

    private String key;

    private String operation;

    private String value;

    private int priority;

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public String getOperation() {
        return operation;
    }

    public void setOperation(String operation) {
        this.operation = operation;
    }

    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

    public Integer getPriority() {
        return priority;
    }

    public void setPriority(Integer priority) {
        this.priority = priority;
    }

    public static Comparator<ConditionWrapper> getComparator(){
        return new Comparator<ConditionWrapper>() {
            @Override
            public int compare(ConditionWrapper o1, ConditionWrapper o2) {
                return o2.getPriority() - o1.getPriority();
            }
        };
    }
//    private String className;
//
//    private String tableName;
//
//    private List<OperationWrapper> operations = new ArrayList<>();
//
//    public class OperationWrapper {
//
//        private String key;
//
//        private String value;
//
//        private String op;
//
//        private Integer priority = 1;
//
//        public String getKey() {
//            return key;
//        }
//
//        public void setKey(String key) {
//            this.key = key;
//        }
//
//        public String getValue() {
//            return value;
//        }
//
//        public void setValue(String value) {
//            this.value = value;
//        }
//
//        public void setOp(String op){
//            this.op = op;
//        }
//
//        public String getOp(){
//            return op;
//        }
//
//        public Integer getPriority() {
//            return priority;
//        }
//
//        public void setPriority(Integer priority) {
//            this.priority = priority;
//        }
//    }
//
//
//    public String getClassName() {
//        return className;
//    }
//
//    public void setClassName(String className) {
//        this.className = className;
//    }
//
//    public String getTableName() {
//        return tableName;
//    }
//
//    public void setTableName(String tableName) {
//        this.tableName = tableName;
//    }
//
//    public List<OperationWrapper> getOperations(){
//        return operations;
//    }
//
//    public void setOperations(List<OperationWrapper> operations){
//        this.operations = operations;
//    }
//
//    public void addOperations(List<OperationWrapper> operations){
//        this.operations.addAll(operations);
//    }
}
